home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Run Magazine ReRun 1984 Half 1
/
rerun-1984-01-06-side-a.d64
/
caves module
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-09-20
|
2KB
|
62 lines
10 lo=7680:co=30720:l=0:h=3:n=4
15 fori=900to915:readj:pokei,j:nexti
20 poke36869,255:poke251,0:poke252,0:poke253,0:poke36878,96:goto5000
50 ifp<>150thengosub3000:goto55
52 fori=7701to7921step22:pokei,33:pokei+co,5:next:poke7833,32:forj=1to50:next
54 l=l+1:p=0:print"";l:h=h-1:ifh<1thenh=4
55 poke37154,127:d=(peek(37137)and28)or(peek(37152)and128)
60 f=(peek(37137)and32)/32:p=p+1
70 ifd=156then150
80 ifd=28thenx1=x1+1:y1=y
90 ifd=152theny1=y1-1:x1=x
100 ifd=148theny1=y1+1:x1=x
110 ifd=140thenx1=x1-1:y1=y
120 ifd=24thenx1=x1+1:y1=y1-1
130 ifd=20thenx1=x1+1:y1=y1+1
140 ifx1<0orx1>21thenx1=x
150 pokelo+x+y*22,32:pokeb,32:sys7179:poke36876,0:ifpeek(lo+x1+y1*22)<>32then250
160 x=x1:y=y1:pokelo+x+y*22,38:pokelo+x+y*22+co,1
170 iff<>0andb=0then240
180 iff=0andb=0thenb=lo+x+(y+1)*22:s=235:poke36876,s:goto200
190 b=b+22
200 ifpeek(b)=39thensc=sc+40
210 ifpeek(b)<>32andpeek(b)<42thensc=sc+10:s=0:poke36876,s
215 ifpeek(b)=41thenpokeb-110,58:pokeb-110+co,2
220 ifpeek(b)<>32thenpokeb,58:b=0:s=0:poke36876,b:goto240
230 pokeb,47:pokeb+co,2:s=s-10:poke36876,s
240 print"";tab(8);sc:goto50
250 pokelo+x+y*22,58:pokelo+co+x+y*22,2
260 fori=15to0step-1:forj=15to1step-1:poke36878,96+i:poke36877,200
265 poke36879,8+i*j:nextj,i
270 n=n-1:l=l-1:ifn=-2thenprint"[147]final score"sc:poke36869,240:end
280 goto5000
3000 c=c+1:ifc>hthenc=0:a=int(rnd(1)*4)+34:goto3020
3010 a=-1
3020 ifw=42andv=3thenw=43:goto3080
3030 ifw=43andv=0thenw=42:goto3080
3040 ifrnd(1)<.7andw=42thenv=v+1:goto3080
3050 ifrnd(1)<.7andw=43thenv=v-1:goto3080
3060 ifw=42thenw=43:goto3080
3070 w=42
3080 fori=0to10:j=22*i+7701:ifi<vori>v+7thenpokej,33:pokej+co,5
3090 ifi=vthenpokej,w:pokej+co,5
3100 ifi=v+7thenpokej,w+2:pokej+co,5
3110 ifi>vandi<v+7thenpokej,32
3120 nexti
3130 ifa=34thenpoke(v+6)*22+7701,a:poke(v+6)*22+7701+co,7
3140 ifa=35thenpoke(v+6)*22+7701,a:poke(v+6)*22+7701+co,6
3150 ifa=36thenpoke(v+1)*22+7701,a:poke(v+1)*22+7701+co,4
3155 ifa=36thenpoke(v+6)*22+7701,a+5:poke(v+6)*22+7701+co,4
3160 ifa=37theni=(v+int(rnd(1)*3+1))*22+7701:pokei,a:pokei+co,9
3170 return
5000 poke36879,13:print"[147]":c=0:b=0:x=0:y=6:x1=0:y1=6:p=0
5010 fori=7922to7965:pokei,33:pokei+co,5:nexti
5020 l=l+1:print"";tab(14);"_?.?_"l
5040 printtab(7);";<=>?[157][157][157][157]"sc
5044 fori=7988to7988+n:ifn<0then5050
5046 pokei,38:pokei+co,1:nexti
5050 v=int(rnd(1)*3):w=42:forq=1to20:gosub3000:sys7179:nextq
5060 fori=7900to7812step-22:pokei,38:pokei+co,1:forj=1to500:nextj:pokei,32:nexti
5070 poke36877,250:poke36878,106:goto50
6000 data8,72,138,72,152,72,32,155,224,104,168,104,170,104,40,96